//package com.itzhouwei.commerce;
//
//
//import com.baomidou.mybatisplus.generator.AutoGenerator;
//import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
//import com.baomidou.mybatisplus.generator.config.GlobalConfig;
//import com.baomidou.mybatisplus.generator.config.PackageConfig;
//import com.baomidou.mybatisplus.generator.config.StrategyConfig;
//import org.junit.Test;
//import org.junit.runner.RunWith;
//import org.springframework.boot.test.context.SpringBootTest;
//import org.springframework.test.context.junit4.SpringRunner;
//
///**
// * @description:
// * @author：zw，微信公共号：yingshengzw
// * @date: 2021/8/28
// * @Copyright：公众号：搬砖暗夜码农 | 博客：https://itzhouwei.com - 沉淀、学习、分享、成长，让自己和他人都能有所收获！
// */
//@SpringBootTest(classes = com.itzhouwei.commerce.AuthorityCenterApplication.class)
//@RunWith(SpringRunner.class)
//public class CodeGenerator {
//
//    @Test
//    public void testGode(){
//        /**
//         * 第一步：  使用代码生成器
//         */
//        //怎么用代码生成器呢？
//        //    1.创建代码生成器对象
//        //    2.执行代码生成器    //mp包里面的AutoGenerator
//        AutoGenerator autoGenerator = new AutoGenerator();
//        //    告诉它怎么生成，在哪生成
//        //datasource数据源配置
//        DataSourceConfig dataSource = new DataSourceConfig();
//        dataSource.setDriverName("com.mysql.cj.jdbc.Driver");
//        dataSource.setUrl("jdbc:mysql://127.0.0.1/zw_commerce?autoReconnect=true&useUnicode=true&characterEncoding=utf8&useSSL=false");
//        dataSource.setUsername("root");
//        dataSource.setPassword("root");
//        autoGenerator.setDataSource(dataSource);
//        //会在D盘生成一个com文件，但是这个位置是不对的，需要我们再进一步配置
//        /**
//         * 第二步：    设置全局配置
//         */
//        GlobalConfig globalConfig = new GlobalConfig();
//        //默认输出D盘根下，设置到这一目录下  zw-commerce-sa-token-center/src/main/java
//        globalConfig.setOutputDir(System.getProperty("user.dir")+"/zw-commerce-sa-token-center/src/main/java");
//        //globalConfig.setOutputDir(System.getProperty("user.dir")+"\\src\\main\\java");
//        //      \\src\\main\\java
//        //设置完之后是否打开资源管理器   NO
//        globalConfig.setOpen(false);
//        //设置作者
//        globalConfig.setAuthor("zw");
//        //设置是否覆盖原始生成的文件
//        globalConfig.setFileOverride(true);
//        //设置数据层接口名，%s为占位符  代表数据库中的表名或模块名
//        globalConfig.setMapperName("%sDao");
//        //设置id生成策略
//        globalConfig.setIdType(IdType.AUTO);
//        autoGenerator.setGlobalConfig(globalConfig);
//
//        /**
//         * 第三步：    设置包名相关配置
//         */
//        PackageConfig packageConfig  =new PackageConfig();
//        //设置生成的包名，与代码所在位置不冲突，二者叠加组成完整路径
//        packageConfig.setParent("com.itzhouwei.commerce");
//        //设置实体类包名
//        packageConfig.setEntity("entity");
//        //设置数据层包名
//        packageConfig.setMapper("dao");
//        autoGenerator.setPackageInfo(packageConfig);
//
//        /**
//         * 第四步：   策略设置
//         */
//        StrategyConfig strategyConfig = new StrategyConfig();
//        //设置当前参与生成的表名，参数为可变参数   生成指定表
//        strategyConfig.setInclude("t_ecommerce_user");
//        //设置数据库表的前缀名称，模块名=数据库表名-前缀名   User=tbl_user - tbl_
//        strategyConfig.setTablePrefix("t_");
//        //是否启用Rest风格
//        strategyConfig.setRestControllerStyle(true);
//        //设置乐观锁字段名
//        strategyConfig.setVersionFieldName("version");
//        //设置逻辑删除字段名
//        strategyConfig.setLogicDeleteFieldName("deleted");
//        //设置是否启用Lombok
//        strategyConfig.setEntityLombokModel(true);
//        autoGenerator.setStrategy(strategyConfig);
//
//
//        autoGenerator.execute();//执行
//
//    }
//}
